\begin{abstract}
As hardware grows more complex and with the transition
to multicore systems, it becomes increasingly important
for software developers to understand the interactions
between their software and the underlying architecture
in order to maximize performance and ensure correctness.
We present the Virtual Application Profiler, a replay
and analysis tool that facilitates this understanding
by allowing programmers to iteratively simulate application execution
on many architecture configurations and evaluate
memory usage and protection in parallel programs.  Our profiler
is unique in that it logs all application execution traces
in a SQLite database, which allows developers to view and
manipulate the logged data with ease.
\end{abstract}
